package com.dzl.admin.pojo.vo;

import com.dzl.admin.pojo.SysMenu;
import com.dzl.util.EmptyUtils;
import lombok.Data;

import java.io.Serializable;
import java.util.List;


/**
 * 功能描述：菜单树返回Vo
 * @author: wangchao
 * @date: 2021/5/11 15:48
 */
@Data
public class SysMenuVo implements Serializable {

    /**
     * 菜单id
     */
    private Integer id;

    /**
     * 模块路径
     */
    private String path;

    /**
     * 模块名称
     */
    private String name;

    /**
     * 是否显示
     */
    private Boolean hidden;

    /**
     * 路径
     */
    private String component;

    /**
     * 	重定向跳转
     */
    private String redirect;

    /**
     * 菜单内容
     */
    private MenuMetaVo meta;

    /**
     * 子菜单
     */
    private List<SysMenuVo> children;

    /**
     * 是否选中  默认false
     **/
    private boolean isSelect=false;

    /**
     * 菜单层级
     **/
    private Integer level;

    public SysMenuVo() {

    }
    public SysMenuVo(SysMenu menu) {
        this.name=menu.getModelName();
        this.path=menu.getModelPath();
        this.hidden=(menu.getHidden()==2)?true:false;
        this.id=menu.getId();
        this.component= EmptyUtils.isEmpty(menu.getUrl())?"Layout":menu.getUrl();
        MenuMetaVo meta=new MenuMetaVo();
        meta.setIcon(menu.getIcon());
        meta.setTitle(menu.getName());
        this.meta=meta;
        this.level=menu.getLevel();
    }
}
